package ${package.Service};

import com.baomidou.mybatisplus.extension.service.IService;
<#if genRemove>
import com.ozo.boot.common.base.model.BaseBatchDTO;
</#if>
<#if genSelect>
<#if genPageTableType == '1'>
import com.ozo.boot.common.base.model.BasePage;
import com.ozo.boot.common.base.model.PageResult;
</#if>
</#if>
import ${package.Entity}.${entity};
<#if genAdd || genEdit>
import ${package.SaveDTO}.${entity}SaveDTO;
</#if>
<#if genSelect>
import ${package.VO}.${entity}VO;
import ${package.QueryDTO}.${entity}QueryDTO;
</#if>

/**
 * ${function} 服务类
 *
 * @author ${author} ${authorEmail}
 * @version ${version}
 * @date ${date}
 */
public interface I${entity}Service extends IService<${entity}> {

<#if genAdd>
    /**
     * 添加${function}
     *
     * @param saveDTO
     */
    void add(${entity}SaveDTO saveDTO);

</#if>
<#if genRemove>
    /**
     * 删除${function}
     *
     * @param batchDTO
     */
    void remove(BaseBatchDTO<Long> batchDTO);

</#if>
<#if genEdit>
    /**
     * 编辑${function}
     *
     * @param saveDTO
     */
    void edit(${entity}SaveDTO saveDTO);

</#if>
<#if genSelect>
<#if genPageTableType == '1'>
    /**
     * ${function}分页
     *
     * @param basePage
     * @param queryDTO
     * @return
     */
    PageResult<${entity}VO> page(BasePage basePage, ${entity}QueryDTO queryDTO);

<#else>
     /**
      * ${function}列表
      *
      * @param queryDTO
      * @return
      */
     List<${entity}VO> list(${entity}QueryDTO queryDTO);

</#if>
</#if>
}
